Data storage systems include storage processors coupled to arrays of non-volatile storage devices, such as magnetic disk drives, electronic flash drives, and/or optical drives. The storage processors are configured to service storage input/output (IO) requests received from host computers, which send the storage IO requests to the data storage systems over one or more networks. The storage IO requests specify data pages, data files, data blocks, and/or other data elements to be written to, read from, created on, and/or deleted from volumes, file systems, and/or other storage objects stored on the respective non-volatile storage devices. Computer software application programs running on the storage processors are configured to manage the received storage IO requests, and to perform various data processing tasks to organize and/or secure the data elements and/or storage objects on the non-volatile storage devices.
At certain points in time, data storage systems create snapshot volumes for purposes of providing for data recovery, backing-up data volumes, improving computer software application program availability, reducing data management costs, and/or other purposes. The snapshot volumes can record states of the data storage systems by creating point-in-time (PIT) copies of data volumes, which are organized with associated metadata in a logical address space. The data volumes can include extents of storage space within the logical address space, and extents belonging to respective data volumes can include data pages of the same size or different sizes.